I want to input into a char array and then have a while loop determine where the input terminates. I don't understand why I can't use the above statement though. My book was really vague about the char data type.
6.33.c:11:38: warning: multi-character character constant
6.33.c: In function `main':
6.33.c:11: warning: comparison is always true due to limited range of data type
Code:#include <stdio.h> int testPalindrome(char[], int, int); int main() { char string[ 15 ]; int arraySize = 15, nSize = 15; scanf("%s", &string); while( string[ arraySize - 1 ] != '/0' ) { --arraySize; printf("arraySize: %d\n", arraySize); } --arraySize; nSize = arraySize - 1; printf("arraySize: %d nSize: %d\n", arraySize, nSize); printf("%d\n", testPalindrome(string, nSize, arraySize) ); return 0; } int testPalindrome(char array[], int n, int size) { if (size % 2 == 1 && (size - 1) / 2 == n ) { // TEST STATEMENT printf("if 1 n: %d\n", n); return 1; } else if (size % 2 == 0 && (size - 1) / 2 == n) { // TEST STATEMENT printf("if 2 n: %d\n", n); if (array[ n ] == array[ size - n ]) return 1; else return 0; } else { // TEST STATEMENT printf("if 3 n: %d\n", n); if (array[ n ] == array[ size - n - 1 ]) return testPalindrome(array, n - 1, size); else return 0; } }



